// Copyright (c) 2011 The Kiwii Authors. All rights reserved.
// Use of this source code is governed by the New BSD License that can be
// found in the LICENSE file. See the AUTHORS file for names of contributors.

#ifndef KIWII_SERVER_INTERNAL
#define KIWII_SERVER_INTERNAL

#include "net/EventLoopBase.hxx"
#include "backend/KiwiiServer.hxx"
#include "backend/KiwiiClient.hxx"
#include <memory>
#include <map>

namespace kiwii {

  struct KServerImpl : public KServer {
    KServerImpl();
    virtual ~KServerImpl() {}

    void init(unsigned short port, char const* address);
    void run();

    int listenfd_;
    std::unique_ptr<net::EventLoopBase> el_;
  };

}

#endif
